Character correlation system



Jan. 10, 1967 R. M. SANDERS 3,298,000

CHARACTER CORRELATION SYSTEM Filed Oct. 31, 1963 6 Sheets-Sheet l x STRING l8 Y STRING I2 24 COINCIDENCE 22 MATRIX 28 COUNTER 26 BANK ZEROES 3Q COUNTER 480 FROM FIG. 8 (OR IS) I LJ 53 2 322 D l O l FF 41o FF 479 9 i i 1 I u l l m ii 1 11: H I 1 M4 I I v fi, J .1 1 r :1 l I 0 6 (S A} 6 A f ,1 P J J9 L CONTROL START 484 INVENTOR RICHARD M. SANDERS ATTORNEYS Jan. 10, 1967 R. M. SANDERS CHARACTER CORRELATION SYSTEM 6 Sheets-Sheet Filed Oct. 31,

w COLI COLZ COL.3 COLA COLE: COLE COLT COLB COLB COL.|O

w a i a w a w PMA CORE 4Q H (O) 8(0) 8(0) Fig. 44 Fig. 4B

6 SheetsSheet C R. M. SANDERS CHARACTER CORRELATION SYSTEM FROM FIG. 2

Jan. 10, 1967 Filed Oct. 31, 1963 COLUMNS 2 3 4 5 4 2 w 7 L W W 0 W W V A R R R R R r S f m 3 N n M 4 m 4 w u 0 .Yx'l L I 3 F m F if r w OF 9 z 2 a 5 6 4 I .h 4 2 6 3 l m .m & %M 8 m 4 5 4 5 SVLII n wll I! l. ..l I 7 I 5 w 1 r l D 3 T F l D 2 2. s L F v. 1 5 80 o 8 I 7 6 5 5 4. 2 3 3 D V 8 2 n 4 5 5 l 6 .J O 6. wFS 5 5 l F 5 o5 I 0 0 II D 37 6 W 6 6 8 5 mw 80 IL l 3 E V- R P T 4 5 4 5 w 5 o F 0 4 &% i 5 o 6 5 .l x PEG 9 5 B 4 5 3 G 0 l5 9 O 4. 4 5 H 7 80 RI...- I 7 l .l 5 I F j a 0 04E 8 0F 5 T 0 so 5 o N 4 w u w m 5 .5 w 4 4 5 .l 7 .l l 93 F o F4 V 3 2 M m w 2 8 w I m 6 A II F I M 7 5 F E 7O 5 o 3 6 2 R l O O 4 5 3 O 5 E 5* n h 4 4 5 c l w w 2 W1 4 m IF 0 r 5 2 3 4 5 5" 5 0 0 m m B B 9 4 x m m m a 1 6 4 4 5 H M 5 6 '8 9 m a 5 i miQiQw-i wi w \v 11! I i 4| l1! JO 4 O s O R 9 J 9 M 5 3 H 9 O m 2 3 4 w 5 4 5 I m m w 8% 6 Q i {I 2 6 F m w 5 Q 6 Q m m w 7 q 4 4 M. U B IT H H Jan. 10, 1967 R. M. SANDERS 3,298,000

CHARACTER CORRELATION SYSTEM Filed Oct. 31, 1963 6 Sheets-Sheet 6 FROM|FIG.5 374 2 SET *l (2 CLEAR 406 Q L 393 37o Q CLOCK FF 3 ass 4 wfin 3s? 1 388 I STROBE 385 i 394 392\ +J A om 4H Patented Jan. 10, 1967 3,298,098 CHARACTER CORRELATION SYSTEM Richard M. Sanders. St. Paul, Minn. assignor to Sperry Rand Corporation, New York, N.Y., a corporation of Delaware Filed Oct. 31, I963. Ser. No. 320,339 39 Claims. (Cl. 340-1725) This invention relates to a character correlation system for allowing the rapid determination of a variety of combinulitms occurring in a. sequence or string of characters, or between strings of characters, by providing specialized circuitry for performing charactcr-corrclation counting operations in parallel that were formerly done by nonspecializetl circuitry in series.

The character correlation system of the present invention utilizes a search memory, a coincidence matrix, and a bank of counters to perform counting functions for relations between characters. The set of characters may include alphabetic, punctuation, numeric, or special significant types. A sequence or a string of characters may contain a plurality of types or only one type. Relationships between characters of the same sequence may be ascertained or, alternativel a plurality of strings of characters may be analyzed for relationships between cliaracters of different strings. Character sequences may be analyzed for a large variety of functions in but a Few cycles per function due to the parallel organization of the system. Plura strings can be analyzed for functions in a number of cycles equal to some small multiple of the number of characters in the setv Strings containing more characters than the number of locations in the search memory can be analyzed by reloading the memory with tlllicrent segments, possibly overlapping of the whole string. The system output is a count of the occurrence of the specified character relation within the two strings. To give but one function for which analysis is possible in the present system. the number of alphabetic character pttllr, (or digraphs) can be determined which are contained within a single character string, either starting at all positions or starting at only odd or even positions. ll two character strings are being simultaneously analyzed, the problem may be to count the coincidences ot a particular character sequence in a first string with a second character sequence in the second string. The invention also may be useful in document reading and pattern reco nition systems between various portions of symbols. Other illustrations of the uses to which the present invention may be put are given in subsequent part raphs of the desc iption to follow.

Therefore. one object of the present invention is to provide a character correlation system which operates in parallel upon the characters of a sequence or sequences so as to substantially reduce the time required for analysis.

A further object of the present invention is to rovide a character correlation system comprising a search memory for holding a plurality of characters at di. erent locations thereof, means for hlltltlllttll iflt lf, interrogating all of the sea ch memory locations for the presence of the same particular character in order to generate gnals indicative of character finds in the memory, a coincidence matrix for comparing the character find signals in several shifted positions ag 'nst one or more reference signals. and a bank of counters or counting the number of coincidences determined by the coincidence matrix.

Although the inventive logical organimtion of the p esent invention may be implemented through the use of various types of components, a novel use has been made of thin magnetic film circuitry in order both to increase operating component speed and to eliminate the need for much circuitry which might otherwise be required for other ltinds of components. The preferred novel cmhutlimcnt of the present invention therefore employs thin film circuitry in the search memory, coincidence matrix, and counter bank which are so coupled together as to provide a compact and relatively simple structure.

Another object of the present invention is to provide a charact:r correlation system constructed for the most part of magnetic thin film circuitry.

A further object of the present invention is to provide a novel magnetic thin film counter bank for the system wherein each counting register may be simultaneously incremented or dccrcmentcd through use of but one set of control pulses.

These and other objects of the present invention will become apparent during the course of the following description to be read in view of the drawings, in which:

FIGURE 1 is a block functional diagram of the system;

FIGURE 2 shows a magnetic thin film search memory organization;

FIGURE 3 shows the arrangement of each bicore element in the Search memory;

FIGURES 4A and 4B are vector diagrams illustrating the operation of a search memory element:

FIGURE 5 shows a magnetic thin film coincidence matrix;

FIGURE 5A shows an alternative embodiment of the coincidence matrix;

FIGURE 6 shows the arrangement of each element in the coincidence matrix;

FlGURE 7 is a vector diagram illustrating the operation of a coincidence matrix element;

FIGURE 8 shows one preferred embodiment of a magnctic thin film counter bank;

FIGURE 9 shows the arrangement of each element in the counter bank of FIGURE 8.

FIGURES 10, ll, and 13 are vector diagrams illustrab ing the operation of an element in the counter bank of HGURE 8;

FIGURE 12 is a timing diagram showing the sequence of operating the counter bank of FIGURE 8:

FIGURES 14A, 14B and 14C show various modifications of the counter bank in FIGURE 8:

FIGURE 15 is alternative structure of a magnetic thin film counter bank which can be used:

FIGURE 16 shows the arrangement of each element in the counter bank of FIGURE 15;

FIGURE 17 is a vector diagram illustrating the operation of an element in the counter bank of FIGURE 15, and

FIGURE 18 shows a simple embodiment of the ZEROES counter.

FIGURE 1 is a block diagram of the character correlation system as it is broken down into its broad functional units. Here are shown at least two search memory fields 10 and 12 each capable of holding an individual sequence or string of characters in a plurality of storage locations. The character strings are conveniently identified in the present discussion as the X string held by memory field 10, and the Y string held by memory field 12. A third search memory field 14 is also provided for holding index characters I at a plurality of storage locations therein in order to permit the system to analyze a larger number of character relationships. The index field 14 preferably can be made large enough to hold the same type of character as contained in the X and Y fields so that it may be used for storing a third character string when not needed for indexing.

For maximum versatility, each string field l0 and I2 and each digit of the index field 14 may be interrogated in dependently or in combination with the others. Interrogation circuitry for field 10 is represented by block 16 labelled X to indicate that each of the X string character locations maybe interrogated for the presence of a partic- 3 ular character applied by the comparison circuitry 16.

Likewise, block 18 labelled as Y represents comparison circuitry for field 12 which can search the Y string sequence for the presence of some particular character. Block 20 labelled I is the control circuitry for the index field 14 or, alternatively, may be used as the comparison circuitry for scanning a Z string of characters therein whenever indexing is not required.

A coincidence matrix 22 receives outputs from the search memory fields and in turn is controlled by comparison signals from a circuit 24 labelled O. The coincidence matrix broadly has the function of accepting information representing the spatial locations of character fields in the search memory fields and then permitting comparisons thereof in several dilterent shifted positions with reference information supplied by circuit 24. The results of these comparisons in the coincidence matrix are then directed to a counter bank 26 which is comprised of a plurality of counting registers one for each of the character locations of the search memory field. Each register of the counter bank may be preset to some initial predetermined count by a circuit 28 labelled K. At the conclusion of the analyzing operation, the number of counting registers in the bank 26 which contain a count of some final predetermined value are totalized by a so-called ZEROES counter 30 in order to conveniently represent the result. Turning now to a detailed description of the preferred embodiment, FIGURE 2 illustrates a search memory comprised of an array of magnetic thin film binary storage elements. The X string search memory field is comprised of a plurality of thin film elements 32 arranged in a number I of colurnns, for example ten, each column adapted to hold a multibit coded character of the X string. The search memory field 12 is comprised of thin film elements 34 also arranged in an identical number I of columns, one for each multibit coded character of the Y string. Likewise, the index field 14 is comprised of thin film elements 36 arranged in ten columns one for each of the character locations in fields 10 and 12. A character in field 14 may be represented in either a single or a multibit code according to the function of the field during a particular problem.

Before continuing with the organization of FIGURE 2, reference should now be made to FIGURES 3, 4A, and 4B, which illustrate and describe the operation of one type of thin film element which may be successfully utilized in a search memory configuration. As seen in FIGURE 3, each binary storage element of the search memory is comprised of a pair of magnetic thin film cores 38 and 40 each of the type described in the United States patent to Rubens, No. 2,900,282. This kind of magnetic core, which normally is deposited upon a substrate (not shown) is preferably of the uniaxial type, i.e., the remanent magnetization in the absence of external fields lies in either one of two opposite directions along an axis fixed with respect to the core and referred to hereafter as the preferred magnetic axis or PMA. Such films are characterized by an anisotropy field Hg, typically a few oersteds in value. The direction of the PMA in core 38 is illustrated by the double ended arrow, while that of core 40 is likewise illustrated by a double ended arrow. FIGURE 3 is an exploded view of the binary core sandwich in which film 40 lies in a plane parallel to the plane of film 38 and directly therebeneath. However, core 40 is oriented with respect to core 38 such that the PMA of the former is transverse, preferably at 90, to the PMA of the latter. Both cores are electrically insulated one from the other, but in such a manner as to permit inductive coupling therebetween.

The thin film 38 is considered to be the memory core of the sandwich which holds one bit of some single or multihit character. During application of one or more large external writing magnetic fields to core 38, the magnetization of the film generally lies in the direction of said applied field. Upon termination of the external fields, any remanent magnetization in the film will revert to one of two opposite directions along the preferred magnetic axis rather than remaining in the direction of the last applied field. The particular direction of the remanent magnetization along the PMA depends upon several conditions, one of which is the smallest angle that the magnetization need turn through after termination of the external field. A binary 1 is considered to be stored in core 38 by causing its remanent magnetization to lie along the preferred magnetic axis in a direction indicated by arrow head 42, while a binary 0 is considered to be stored in the core by causing the remanent magnetization to lie in a direction indicated by arrow head 44. Any remanent magnetization existing in memory core 38 produces a magnetic field external thereto which influences the degree and direction of the magnetization in core 40, which in turn is identified as a read out core used in non-destructively interrogating the contents of core 38. Because the external field from core 38 is anti-parallel to the remanent magnetization in said core, it is noted that the external field is transverse to the preferred axis of magnetization in core 40. The strength of this magnetic field from core 38 is sufiiciently great to create lines of flux in read out core 40 which substantially lie in the same direction as that of the core 38 external field. Therefore, it will be appreciated that the magnetization in core 40, due to the biasing field of the core 38 remanent magnetization, is in a direction transverse to the direction of the PMA in core 40. However, although core 38 is inductively coupled to core 40, the field set up by any flux in core 40 should not substantially affect the direction of magnetization in core 38. This criterion may be effected by providing core 38 with a relatively high coercivity while core 40 has relatively low coercivity. If the efiect of the external field generated by the remanent mag netization in core 38 is cancelled as regards core 40, then the remanent magnetization remaining in core 40 will lie parallel to its PMA in either of the two opposite directions represented by arrow head 46 or arrow head 48. Any change in the direction of magnetization in core 40 can therefore be sensed in order to determine the nature of the binary content of core 38.

The manner in which nondestructive read out occurs is as follows. A steer line or winding 50 is electrically insulated from cores 38 and 40 but is inductively coupled to at least core 40. Any current flowing through wind ing 50 sets up an external magnetic field having a direc tion at a right angle thereto. If winding 50 is oriented so that it lies at a right angle to the PMA of core 40, then any external field generated by current flowing therethrough will be approximately parallel with said PMA. This field, which may be called a longitudinal steering field, need have a magnitude sufficient only to cause the remanent magnetization in core 40 to always revert to the same direction upon cancellation of any external field on core 40 which is transverse to its PMA. Thus, the longitudinal steering field, as generated by current flowing in conductor 50, determines a definite and unchangeable direction to which the remanent magnetization in core 40 always returns in the absence of any strong transverse external field applied thereto. Cancellation of the eflect of the external field applied by remanent magnetization in core 38 is accomplished by means of an interrogate winding 52 which may have current flow in either of the two directions thercthrough. and which is inductively coupled to at least core 40. Any external field generated by current in winding 52 will be at a right angle to this axis. If conductor 52 is oriented transverse to the PMA of core 38, then it will be seen that the external field generated by winding 52 either reinforces or reduces the elfect in core 40 of the external biasing field produced by the core 38 remanent magnetization. Winding 52 is electrically insulated from the two cores and from all other windings. In order to sense a change in the direction of magnetization in core 40, a sense winding 54 is provided which is inductively coupled therewith and is so oriented transverse to the core 4!) PMA, preferably at degrees, that any change of magnetization along said IMA results in an EMF. signal being induced in sense windin 54. On the other hand, any change in the magnetization of core 40 in a direction parallel to winding 54 will not generate an output signal therein since ilurt in this direction does not link the conductor.

In order to frilly understand the operation of the binary element of FIGURE 3, reference is now made to FIGURES 4A and All. In each of these figures there are shown two vector diagrams, the upper one indicating the approximate magnitude and direction of the magnetic fields involved during the operation, and the lower one indicating the approximate magnitude and direction of the magnetization in core at) in the presence of the above-mentioned magnetic fields. For the purpose of this description, it is assumed that the axes of wind ings 5t) and 54 are both substantially parallel with the PMA of core 38, while the axis of winding 52 is substantially parallel with the PMA of core 40. In FIG URE 4A, the external field produced by core 38 remanent magnetization representing binary l is indicated by II H] in the upper diagram. while the external field representing binary (l is indicator] by H IU). Obviously only one of these two vectors may exist in the core at any one time. 'I he core and core parameters are so chosen that the fields H tl) and H IO) are about 1.5 times the H oi core ill. A small steering current is normally caused to how continuously through winding in a direction 56 so that an external field labelled H is generated which lies at a degree angle with respect to the external fields H H) or B W) Since conductor St) has at a right angle with the preferred magnetic axis of core 40, field H must also he parallel to the PMA of the read out core 40. The magntiude of field II may be quite small inasmuch as its only function is to insure that the remanent magnetization in core 40 will fall in the direction of H along its PMA when the efieet of a transverse external field H t'l) or H ttl) is cancellet.

Now turning to the lower vector diagram of FlGURE 4A, it is seen that the direction of flux in core 40 is primarily determined by the direction of the applied external fields H L'I) or H UJ). For example, when field H O) is applied, then magnetization Bit) is produced in core 40 in a direction parallel to said field. If field H is also present in core 4% at this time, then 13(1) would actually be in a direction determined by the resultant of the two fields H IIJ and H However, inasmuch as the magnitude of the field H tl) is rel-a tively large with respect to the magntude of field H it may be considered that the direction of tlux Btl) is substantially parallel to that of the former. In like fashion, the presence of field H IO) causes the creation of this in core 40 having a direction substantially as indicated by Bill) in FIGURE 4] It will therefore be appreciated that in the preferred configuration of the search memory, the angle between the flux Bill) or 8(1) and the PMA of film 40 is approximately 90 degrees. The flux therefore lies substantially parallel to the so-called hard ends of magnetization in core 48 which is that axis perpendicular to the PMA.

Turning now to FIGURE 43, the mode of operation will be explained for interrogating the content of core 38. As before described, each bicore in the search memory field is interrogated as to the presence or absence of a particular bit 1 or 0, according to the particular word for which a search is conductor. In FIGURE 3 this is performed by producing a current flow in the interrogate winding 52 in either one direction or the other according to the value of the requested bit. For example, if it is desired to ascertain whether or not the bicore of FIGURE 3 contains a binary I in its memory core 3%, then current flow in the direction of arrow 58 is produced in winding 52 such that it generates an external magnetic field H U) as shown in the upper Ill vector diagram of FIGURE 48. Assuming now that the rcmanent magnetization in core 38 lies in direction 42 which produces field H U}. it is seen from FIGURE 48 that interrogating field l-I (1) has a direction in core 40 such that the total transverse field therein is the sum of H tl) and H;(l). The absolute value of H ll) is adjusted to to equal to that ol Hart 1 so that the total transverse field is twice that of H H). Therefore. the direction of magnetization in core 40 is maintained in the direction of the flux Ell) in the lower diagram of FIGURE 48. If the field H LI) by itself has stillicicnt magnitude to drive core 40 to saturation, the application of a field having twice this magnitude will not increase the magnitude or direction of fiux BU). Because there is no substantial change of flux magnitude in a direction parallel to the core 40 PMA under this Iirst assumed condition. there will be no change in flux Iinlting the sense line 5i. Therefore, no EMF. signal is induced in winding 54 which thereby indicates that the core 38 contains a binary I.

In the event that field H I U) exists at the time that field H M) is applied, thus indicating that core 38 contains a binary I). it is seen from FIGURE 48 that the vector addition of H (l) and H HJ) results in the cancellation of any transverse field effect in core 40. As noted previously, the magnetic core 40 used in this particular search memory has the property such that its remanent magnetization is stable only in either one of two opposite directions along the PMA. The cancellation of the dominant field H in core 40 thereby causes magnetization 13(0) to rotate and fall in one of two opposite directions along its PMA. The particular direction adopted by the remanent magnetization is governed by the direction of the small steering field H Thus, as seen in the lower vector diagram in FIGURE 48. the remanent magnetization BtR) in core 40 will fall along its PMA in a direction indicated by the steering field H in the upper diagram of FIGURE 48. The presence of the steering field H during the time when any transverse field is cancelled therefore prevents the core 49 magnetization from ever rotating to a direction along its preferred axis opposite to that of BtR) shown in FlG- URE 4B. Thus the change in flux 3(0) will always be in the same direction.

As before noted, the sense winding 54 is so oriented that a voltage is induced therein by any change of the flux in core 40 in a direction parallel to the PMA, said direction being perpendicular to the axis of winding 54. Under the assumption that core 38 contains a binary t) and is being interrogated for a binary 1, then a first signal of one polan ity is induced in sense line 54 as the direction of man netization changes from that of 8(0) to HR), which thus indicates that core 38 does not contain the binary bit for which it is searched. Upon discontinuing the interrogation field HA1), the eilect of the rcmancnt magnetization field H ttll will again be felt in core 40 such that the direction of magnetization therein will revert to that indicated by the vector Bill). A second output signal of polarity opposite to that of the first s nal now appears on winding 54. Either of these two signals may be used as the indication of noncomparison. In the event that memory core 38 contains a binary It, then the application of interrogation field H ll'il in FIGURE 48 will result in a reinforcement of the transverse field I-I tlll in core 40 such that the direction of magnetization in core 40 will not be changed. In this event, the flux maintains the direction as indicated by 8(0) in FIGURE 43. Howcven assuming that core 38 contains a binary I when the cell is interr g ted For a binary tl, the application of the fields H H) and H ttll in FIGU 1E 48 results in cancellation of a transverse field such that only remanent magnetization Rt'R) remains in core 40. Vector BtRl has a direction along the preferred magnetic axis as steered by the longitudinal tield H In this event, the direction of magnetization in core 40 will have changed from that indicated by Btl) t the direction indicated by B(R). Because of the ehangfie in flux linking conductor 54, a first signal is induced therein at the commencement of the interrogating field 11 (0). This signal has the same polarity as that signal induced when the change in flux direction is from B(0) to B(R). Upon discontinuing the interrogating field 11 (0), the direction of flux in core 40 reverts to the direction indicated by B(1), and a second EMF of opposite polarity will be induced in conductor 54.

The fields H and H are of insuflicient magnitude dur ing the read out cycle to affect the direction of remanent magnetization in core 38 because of its much higher coercivity. Only flux in the lower coercivity core 40 can be changed by these applied reading fields in the manner described above. However, by increasing the current through winding 52 during a write cycle, a larger field 11 (1) or 11 (0) can be used to switch the flux in core 38 to either direction along its PMA so as to store either a 1 or a 0 in the bicore. Usually, the magnitude of this writing 11; field is just larger enough so that there is still required the concurrent application of a small field H (transverse to the PMA of core 38) in order that flux reversal can take place in the memory core. Instead of using the read drive windings 50 and 52 for writing, however, additional write windings may be provided for each bicore to generate the larger longitudinal and transverse fields required to switch the flux in memory core 38. Another modification of the search memory element might be one wherein the memory core 38 is dispensed with in favor of an additional winding individual to its read out core 40 and through which current flows to set up either the H (1) or H (0) fields. However, the advantage of using a memory core 38 to generate these fields is that a bit can be permanently stored in the element without a continuous expeniditure of. power as would otherwise be the case for said additional winding.

Returning now to FIGURE 2, each thin film binary storage element 32 of field 10, element 34 of field 12, and element 36 of field 14 may be comprised of the bicore sandwich illustrated in FIGURE 3. Within each search memory field and 12 the number of elements within each column is determined by the particular code used to represent the characters stored within the memory. In the embodiment of FIGURE 2, it is assumed that a straight binary code of five bits is used to represent each character. This then requires five element rows in each of the fields 10 and 12. If the I field 14 is to also have the capability of storing the same character, then it too must have five ele ment rows. A five bit binary code is of a size to permit the representation of 32 unique characters and so is sufficient to handle the 26 letters of the English alphabet plus several special characters. However, by expanding the binary code to six bits, sixty-four unique characters may be identified among which could be digits 0-10 and Further additional characters. Other codes may also be employed such as two out of five," a straight decimal code, or many others. Although only two elements per column are actually shown for the Y field 12 and the I field 14 in order to simplify the drawings, it is understood that each also contains five thin film binary elements pcr column in the manner shown by field 10.

For each of the thin film elements in fields 10, 12, and 14, the horizontal line passing thereacross represents the read out core interrogate drive winding 52 shown in FIG- URE 3. while the vertical line passing thereacross represents the sense output winding 54 of the element. The steering field winding 56 of FIGURE 3 is not shown in FIGURE 2 but is assumed to be present in order to apply the steering field H For each field the interrogate windings of all elements in the same row are connected in series such that each is interrogated for the same binary value. Thus. each of a group of five row interrogate windings 62-66, inclusive, is common to one of the rows 1-5,

espectively, of field 10. In field 12, each of the interrogate windings 67-71, inclusive, is respectively individual to and common with the elements in respective rows 1-5. while each of the interrogate windings 72-76, inclusive, are likewise individual to and common with the elements in respective rows 1-5 of field 14.

The vertical sense windings of all elements in the same column of a field are likewise connected in series circuit with one another, as well as in series circuit with the sense windings of the corresponding spatially located columns in each of the other fields. Thus. a sense winding 77 is in common with all of the elements 32 in column 1 of field 10. as well as being in common with all of the elements 34 in column 1 of field 12 and all of the elements 36 in column 1 of field 14. Sense winding 78 is common with all of the elements in column 2 of fields 10, 12, and 14. A similar arrangement ex sts between the remaining sense windings 79-86 and the elements in respective columns 3-10 of all search memory fields.

FlG. 2 illustrates a switch arrangement, manually or automatically actuable, connected with the interrogate windings 62-76 in order to direct current in either direction therethrough in the manner described in connection with FIGURE 3. Each one of a group of single polethree position switches through 94, inclusive, may be moved to a positive potential terminal, a negative potential terminal, or a neutral center position so as to respectively cause current flow to the right towards the ground, to the left away from ground, or no current flow whatsoever, in each of respective interrogate windings 62-66. Current flow does not actually begin, however, until the ganged contacts -99 are sin'lultancously closed by moving linkage 100. in similar fashion. the group of single pole-three position switches 102-106 is used to selectively energize the interrogate respective windings 67-71 of field 12, while switches 107-111 selectively energize respective interrogate windings 72 through 76. As in field 10, the actual current fiow in the interrogate windings of fields 12 and 14 cannot actually commence until ganged contacts 112-116 and 117-121 are closed by moving linkage 100. When a search memory field is to be interrogated, the magnitude of the positive or negative potential applied to its row interrogate windings should be large enough to cause read out from the cores 40 without causing a change in the remanent magnetization of cores 38 as has been previously explained. To write a character into a particular search field column, the row windings and the steer windings can also be conveniently employed in the following manner. Each column may have the steer windings of its elements connected in series circuit so as to form a group of column steer windings much in the manner of column sense windings 77-86. Each column steer winding may be individually actuablc so as to select only one column for entry of a character therein. Each of the switches 00-94, 102- 106. and 107-111 is set to either its positive or negative terminal so as to determine the bit values of the character to be written into the respective fields 10. 12. and 14, while the magnitude of the current through the row inter rogate windings is increased. as by increasing the supply potential, to produce longitudinal fields H sufiieient in the presence of a transverse field H to thereby switch the magnetization in the memory cores. By now selectively energizing only one of said column steer windings. a character can then be entered into the memory cores 38 of only that memory column having the transverse ficlil l applied thereto. After characters have been written into this selected column. switches 90-94. 102-106, and 107- 111 are then reset to represent characters to be written into another column and the steer winding of said another column is then energized. Thus, the sequential energization of the column steer windings one for each setting of the row Winding switches causes characters to be entered into each search memory field column by column.

To briefly describe the interrogation of the search memory, first assume that the X string of characters stored in field 10 includes the English letter A only in columns 1 and 4, with the remaining columns of field 10 storing either a different letter or no letter at all. If letter A is further assumed to be represented by a five bit code as 00001, then the memory cores of the row 1 elements in columns 1 and 4 will have a remanent magnetization representing binary 1, while the memory cores oi the rows 2-5 elements in columns 1 and 4 will have rcmancnt magnetization in a direction specifying binary 0. A ditlerent pattern of bits will be held in each of the other columns 2. 3, and 5-10 according to the particular difierent letter held therein. Further assume that fields 12 and 14 are not to be interrogated so that the characters held by the memory cores of the elements therein are presently of no interest. if field is now to be interrogated in order to determine in which columns the letter A might be stored, switch 90 is moved to contact its positive terminal while switches 91 through 94 are each moved to contact their negative terminal. Linkage 100 is now actuated to close contacts 95-99 so as to generate current in winding 62 towards the ground, while current is generated in windings 63-66 in the opposite direction away from ground. in each of the columns 1 and 4. the row 1 element with binary 1 in its memory core will not have a change in direction of flux in its read out core due to the fact that there is no cancellation of transverse fields therein. Consequently, there is no output EMF induced in those segments of sense windings 77 and 80 which are inductively coupled with the row 1 cores. In like fashion, since each of the read out cores of the row 2-5 elements in columns 1 and 4 does not have a cancellation of transverse fields therein, no voltage is induced in sense windings 77 and 80 from any of. these row elements. However, there is at least one read out core in each of the remaining columns 2, 3, and 5-10 in which there is a cancellation of the transverse field due to a non-comparison between its memory core remanent magnetization and the bit being interrogated for. This cancellation of transverse fields in at least one element of each of the columns 2, 3, and 5-10 therefore induces voltage on each of the respective sense windings 78, 79, and 81-86 so as to indicate the absence of. the letter A in any of these columns. it will thus be appreciated that there appears on each of the sense windings 77-86 a signal indication of whether the particular character interrogated for is stored in its respectively coupled character column. in the particular search memory shown here, said signal takes the form of an induced EMF whenever the character is absent from the respective column, and takes the form of an absence of induced EMF when the character is stored in the particular column.

As stated above, an assumption is made that only field 10 is interrogated when linkage 100 is actuated. For this case switches 102-106 and 107-111 are maintained in their neutral position so as to avoid the generation of current flow in their respective interrogate windings when contacts 112-121 are closed. If it is alternatively desired to inter rogate only field 12 of the search memory. then switches 90-9-1- are placed in their neutral center position and switches 102-106 are set to contact either their positive or negative terminals according to the character for which interrogation is desired. A different kind of search is one made for the presence of the letter A contained in the corresponding spatially located columns of the fields 10 and 12, or alternatively, a search made in field 10 for the letter A coupled with a search in field 12 for the letter C in cerresponding columns. For the first case, both groups of switches 90-94 and 102-106 are set to the binary code for letter A. Linkage 100 is then operated to simultaneously close contacts 95-99 and 112-116 (contacts 117-121 are also closed but it is assumed here that switches 107-111 are left in their center position). For this condition it will be obvious that a voltage will be absent from any one of the sense windings 77-86 only when the letter A is contained in corresponding columns of the fields 10 and 12. For example, assume that letter A is stored only in columns 1 and 4 of field 10. and only in column 1 of field 12. Sense winding 77 therefore has no voltage induced thereon from either of the column 1 elentcnts or 34, so as to indicate the presence of the interrogated character in column 1 of both fields. On the other hand, at least one of the read out cores of the column -'i elements 34 in field 12 will have a change in its magnetization] so as to induce a voltage on sense winding 80, thus indicating that letter A is not stored in column 4 of both fields. The remaining sense windings 78, 79, and 81-85 obviously also have voltage induced thereon because of characters other than A held in the respective field columns.

The second case mentioned above, that of interrogating field It). for letter A and interrogating field 12 for letter C, is now described. Here assume that letter A is once again held in columns 1 and 4 of field l0 and letter C is held in columns 1 and 15 of field 12. Switches through 94. are set to the binary code for letter A, while switches 102-106 are set to the binary code for the letter C here assumed to be 00011. The like comparison of each of the bits held in the columns I and 4 memory corcs of field 10 therefore prevents signals being induced on sense windings 77 and 80 from their respective read out cores. In field 12, the like comparison of the bits held in the memory cores of column 1 likewise prevents a signal from being induced in sense winding 77 from the read out cores associated therewith. Consequently, sense winding 77 remains free from any induced EMF at the time that linkage is actuated. On the other hand, since column 4 of fiel 12 contains a letter other than C at least one read out core of the elements 34 in said column will have its flux changed to thereby cause a voltage to be induced on sense winding 80. This signal on winding 80 is there fore indicative of the fact that a column 4 of at least one of the interrogated fields does not contain the character whose code is set up on the respective field interrogating switches. EMF signals also will appear on the other sense windings 73, 79, and 81-86.

Field 14, as has been explained previously. may be used either for an index function or as an additional character string field. When used for indexing, the normal mode of operation for field 14 is to enter a particular bit configuration into the memory cores of elements 36 and then to interrogate only those rows in field 14 that contain the desired indexing bits at the time that one or more of the oiher fields is interrogated. When field 14 is used for storing an additional string of characters, however, then all of its memory cores are set to values representing the stored characters and switches 107-111 are thrown to a particular binary code representing a character for which interrogation is made. The dual function of field 14 will become clear during description of the entire system operation in subsequent paragraphs.

FIGURE 5 illustrates one embodiment of the coincideuce matrix, which, in the preferred form, comprises an array of magnetic thin film element arranged in columns and rows. There are as many columns numbered 1-10 in the coincidence matrix as there are columns in each of the search memory fields 10, 12, and 14. The number K rows in the coincidence matrix is governed according to those functions to be analyzed by the SyniBllI as will be clearly understood in subsequent paragraphs. There need not be, however, an equal number of elements in all columns of the coincidence matrix. because those missing in the first five columns of FEGURF, 5 are not required for a successful operation of the system.

Reference is now made to FIGURES 6 and 7 before continuing with the description of FIGURE 5. FlGURF. 6 is an exploded view showing the construction of each element 130 in the coincidence matrix. Only one thin film magnetic core 132, of the type explained in connection with Fl'GURE 3, need be employed having its PMA in the direction shown by the double ended arrow. Inductively coupled therewith is a sense winding 13-1 whose axis is parallel to the PMA of core 132 as the winding passes over the core. Also inductively coupled with core 132 but with their axes substantially at right angles to the PMA thcreol are a drive winding 135 and an interrogate winding 138. All windings 134, 136, and 133 are electrically insulated one from the other and from core 132. Each of the windings 136 and 138 can carry a current in either direction thercthrough as indicated by the arrows, while the sense winding 134 carries an output EMF signal from the element. FIGURE 7 is a vector diagram of the fields applied to magnetic film element 132. Current flow in winding 136 in the direction of arrow 140 generates an external field having the direction H (1) within core 132, while current flow in winding 136 in the opposite direction of arrow 142 generates a field in core 132 in the direction of H The numbers in parentheses designate a binary value significance to be given to each field direction. Likewise, current flow in interrogation winding 138 in the direction of arrow 144 generates a field H (1) within core 132, while current flow in the opposite direction of arrow 146 generates the external field H (0). In addition to the H and H fields, which are applied to core 132 only when current flows within its respective windings, a small fixed transverse field H is generated by either a magnet or an additional winding (not shown) such as steer winding 50 in FIGURE 3, or alternatively by the external field of a high-coercivity film core which is positioned with respect to core 132 in the same manner as core 33 is positioned with respect to core 40 in FIG- URE 3. A construction of the last type comprises a bicore. The function of the small continuously applied field H is to ensure the rotational switching of the mag netization within core 132 in the proper direction of rotation whenever either one of the windings 136 or 138 carries current in either direction. A rotation of the film magnetization induces in the sense windings 134 a signal indicative of such switching.

In operation of FIGURE 6, core 132 is first driven by a current pulse flowing only in the drive winding 136 to a magnetization state corresponding to a bit to be examined for coincidence with a reference bit. First assume that there is no current in either winding 136 or 138, and that the remanent magnetization in core 132 lies in a direction along its PMA indicated by vector B in FIGURE 7. The continuously applied small field H has insufficient magnitude to substantially alter the magnetization in core 132 from a parallel position along the PMA. Next assume that current is passed through digit winding 136 in the direction of arrow 140 so as to generate the field H (1). This field, coupled with the H field, is sufficient to rotate the core 132 magnetization into the opposite direction as indicated by the vector 8(1) of FIGURE 7. During this rotation of the flux B(0) to 3(1), there is a change of ilux in core 132 in a direction transverse to sense winding 134 which induces a signal therein. However, this signal is ignored during this particular time of the operating cycle. After the flux in core 132 assumes the direction Btll, current flow in winding 136 is terminated so as to terminate the field H M) without, however, altering the direction of flux 13(1) which thereafter remains in its new rotated direction. The interrogate winding 138 is now pulsed so that current flows therethrough in one direction or the other according to the value of a reference bit which is to be compared against the hit previously entered by the excitation of winding 136, Assume that said reference bit is a binary 1 such that current flow in winding 138 in the direction of arrow 144 generates the field H M). Since H U) is in the same direction as the flux magnetization 8(1), there is no rotational switching of flux core 132 at the time that the interrogate winding 138 is pulsed. Consequently. even though sense winding 134 may now be examined during the pulsing of 138, there appears no induced voltage thereon From core 132. This indicates that the value of the bit entered into core 132 by winding 136 is identical to the value of the reference bit applied via winding 138. On the other hand, now assume that the reference bit is a binary 0 such that current in winding 138 in the direction of arrow 146 generates the i2 field H NT). This field, together with the small steering field H now causes the flux B(1) in core 132 to be rotated 180 back to the direction indicated by vector BN1). This rotation induces an EMF in sense winding 134 which indicates the lack of identity between the reference bit and the previously inserted bit.

Returning now to FlGURE 5, the organization of the coincidence matrix array is seen to be the following. For each row of the matrix, all elements therein have their interrogate windings 138 connected in series so as to form a set of five row interrogate windings 150454, inclusive. For each column of the coincidence matrix, all elements 13%) therein have their drive windings 136 connected in series so as to form a set of ten column drive windings 15=164, inclusive. The sense winding 134 of each element at a particular column and row inter section is connected in series with the sense winding of the element in the next higher numbered adjacent column and adjacent row intersection so as to form a diagonal complex of sense windings through the array. For example. the sense windings of the following elements, each identified by its column and row position, are connected in series so as to form an output sense winding from the matrix: column 1, row 1; column 2. row 2; column 3, row 3; column 4. row 4; and column 5, row 5. Nine other matrix output sense windings 166 174 are likewise formed by connecting appropriate sense windings of certain elements in common one with the other according to the relationship given above.

Each of the column drive windings 155*164 to the coincidence matrix is respectively connected to the output sense windings 77-86 of the search memory via respective drivers 5tl05t)9. Consequently, a signal induced on any one of the sense windings 77-86 is sufiicient to drive each element 130 which is in the corresponding connected coincidence matrix column. For the purpose of this discussion, it is assumed that the signal which is first generated whenever there is lacking a character find is of such polarity as to allow energizing of drivers 500-509 so as to place the coincidence memory elements 130 into their binary 1 state. Thus. if all coincidence matrix elements 13!) are initially set to their binary 0 state prior to interrogation of the search memory, then only those elements 130 connected with search memory columns where character finds are made will remain in their binary 0 state a ter the search memory has been interrogated.

In order to apply reference bits to the selected rows of the coincidence matrix. a group of single polethree position switches 181L184 are provided together with a set of ganged contacts 1854 S9 actuated by a linkage E90. Each switch in the group FEES-18d can be moved to contact either a positive or a negative terminal respectively representing a reference bit value of binary 1 or binary 0. Alternatively. each switch can be left in a center neutral position so as to prevent current flow in its res ective row interrogate winding even when contacts 185489 are closed. Inserted between each of the switches 180484 and its associated interrogate winding is a different one of the inverter circuits 192 196. respectively. The function of each inverter is to change the polarity applied to it from its respective switch so as to interrogate its row elements l3" for a hit opposite in value to that indicated by the switch setting. For example, if switch is thrown to contact its positive terminal which represents a binary 1, inverter 192 applies a negative voltage to interrogate winding 150 so that each element 130 in row 1 is actually interrogated for a binary 0. Conversely, by setting switch 13 to the binary 0 (negative) terminal, inverter 192 applies a positive voltage to winding 150 so as to interrogate its row elements for a binary l. The purpose of providing inverters B2496 is to compensate for the fact that the sense output windings 77-85 of the search memory have null (no) outputs thereon when character coincidences is found. Inverters could alternatively be inserted into each of the search memory sense output windings 77-86 rather than in thc interrogate windings 150-154 of the coincidence matrix. but in most systerns the number of character columns will be considerably in excess the number of rows contained in the coincidence matrix. Therefore. the inverter location shown in the preferred embodiment is by far the more economical of the two arrangements.

The general function of the coincidence matrix is to permit the simultaneous comparison of selected reference hits. as supplied by switches 180-184, with several shifted positions of the bits supplied on input drive windings 155- 164. In other words. there can be simultaneously determined the existence of coincidences between selected reference bits and a group of incoming bits when shifted through several po sible positions. Those shifted positions of the incoming bits which yield an exact coincidence are identified by the absence of an induced EMF on appropriate sense windings 165-174. As an example, assume that a search memory interrogation applies current pulses to input drive windings 155, 156. 159, 161. 163. and 164 which are respectively associated with elements in columns 1. 2. 5. 7. 9, and 10 of the coincidence matrix. Each of these current pulses is sufiicient to set all of its associated column elements 130 to a binary 1 value. whereas those elements in a column whose input drive line has no current therethrough remain in a binary state (assuming that all matrix elements 130 have been previously set to binary by appropriate use of switches 180-184 at a time prior to said search memory interrogation). Consequently. the binary condition of each element 130 in the coincidence matrix is represented by the values shown in Table 1 below.

The absence of a signal on output sense winding 165 therefore. indicates the complete identity between the reference bits and the leftmost five bits of the incoming signals from the search memory. Now refer to matrix output sense winding 166 which is inductively coupled in common with matrix elements 130 holding the bit values liltllO, reading from row 1 to row 5. It will be immediately obvious that the bit configuration held by these matrix elements is identical to the bit configuration ltl llltl held in columns 2-6 of matrix 1. Thus, the comparison between the five reference bits 110i)! and the bits in the elements along sense line 166 is the same as if a comparison were made between the reference bits and the incoming search memory signals shifted one position to the left with regard to their original positions as entered from the search memory. Because several of the matrix elements along output sense line 166 do not store bits identical with their respective interrogating reference bits, there will be a reversal of fiux therein such as to induce an output voltage or sense line 166 to thus indicate there is no exact comparison between all of the refernce bits and the once shifted position of the incoming bits. It will further be noted that each of the remaining output matrix sense lines 167 to 174 has voltage induced thereon due to the fact that one or more elements common therewith contains a bit value opositc to that interrogated for. If one or more of the switches 180-184 is left in its center neutral position, then the associated interrogate winding is not pulsed and the information stored in the matrix elements of the associated row will have no bearing upon the nature of the output signals from the matrix.

Although the null output on any one of the sense windtfnlumu n l U l n u n l u r n l and-urc- Next assume that switches 180. 181. and 184 are moved to their negative terminals, while switches 182 and 183 are moved to their positive terminals. This applies reference bits of the values shown at the far left of Table 1, with inverters 192 to 196 changing these values to those shown to the immediate right thereof. Consequently, rows 1. 2. and 5 of the matrix are actually interrogated for binary 1 values. while rows 3 and 4 of the matrix are interrogated for binary 0 values. From Table 1 it will therefore be obvious that when the coincidence matrix is interrogated. none of the elements 13f! coupled with output sense winding 165 will be switched due to the fact that each contains a bit value identical with the refernce bit value for which it is interrogated. For example. each of the elements 139 identified by column l-row 1. column 2-row 2, and column 5-row 5 stores a binary l and in turn each is interrogated for a binary 1. Each matrix element identified by column 3-row 3. and column 4-row 4 stores a binaly 0 and in turn is interrogated for binary 0. ln effect. an examination of these five matrix elements indicates that the comparison being performed here is equivalent to comparing the inverted reference hits 11061 (rows 1-5) with the five left most hits lltltll of the bit sequence contained in row 1 of the matrix. It must further be recognized that row 1 of the coincidence matrix contains the original incoming bits in an unshifted position. i.e.. shifted neither to the right nor to the left from the spatial (or column) positions in which they were generated from the search memory.

ings 165-174 indicates that coincidence has been found between the reference bits applied and bits stored in the elements associated with that sense line. it is convenient to provide additional circuitry responsive to said null condition in order to generate a positive (or negative) signal indicative of said coincidence. This function may be performed by providing a group of bistable flipflop elements 441 through 450 each operating to effectively change the voltage condition appearing on a respective one of the sense lines 165-174. Each flip-flop element has two stable states termed the 1 condition and the 0 condition. with inputs adapted to receive individual signals for placing a flip-flop in either one of said two conditions. When in the 1 condition. an output taken from the 1 terminal of flip-flop may be assumed to apply a positive voltage to some subsequent elements. whereas the same terminal provides a low or negative signal if the flip-flop is in its 0 condition. The sense lines 165-174 are individually conectcd to the 0 condition input of a respective flip-flop. and the 1 condition inputs of all flipflops are connected with a switch 452 which, when closed, simultaneously sets all flip-flops to their 1 condition. A group of AND gates 454-463. inclusive are provided to sample the condition of respective flip-flops upon the application of a gate signal to each by a switch 466. In operation. switch 452 is closed to initially set all of the flip-flops 441-450 to their condition prior to the operation of contacts 185-189. When this latter sets of contacts is then closed, voltages induced on certain of the output sense windings 165-174 are employed to reset their respective flip-flops back to the condition, leaving only those flip-flops remaining in a 1 condition which are connected to the sense lines having a null output thereon. Contacts 466 may then be closed to sample the conditions of the flip-flops, with only those AND gates generating output signals which are associated with the coincidence matrix sense windings having null indications. The output signals from AND gates 454-463 appear on respective ones of lines 530-539 and may then he employed to select certain counters in the counter blank.

Certain operating modes of the character correlation system may require that the null outputs on one or more of sense windings 171-174 be ignored by the counter bank. Switches 520-523 are therefore provided in FIG- URE 5 to selectively disconnect respective flip-flops 447- 450 from their respective sampling AND gates 460-463, so that a binary 1 condition will not enable the generation of an output signal from the associated AND gate. Another way of handling this problem is by extending the coincidence matrix to the right as shown in FIGURE SA so as to complete a parallelogram. Additional columns 11-14 are added each with a sufficient number of elements 130 to allow each of the sense windings 171-174 to have five elements inductively coupled therewith. Row interrogate windings 150-154 are extended to include these additional elements, and column 11-14 drive windings 550-553 are added each connected with a respective driver 554-557. By selectively closing one or more of the switches 558-561, the elements 130 in the associated columns may be set to their binary 1 condition. Thus, if any of the matrix rows is interrogated for an actual binary 0, a sense winding of the group 171-174 may have an EMF induced thereon if any of its elements 130 is set to binary 1. This means that each of the flip-flops 447- 450 can be reset to binary 0 so that signals are prevented from respective AND gates 460-463.

Referring now to FIGURE 8, one embodiment of a novel counter bank acceptable for use in the present system will now be described. A plurality of magnetic thin film elements 200 are arranged in a number of columns and rows, with the number of columns being equal to the number of columns in each of the search memory fields. The number of rows depends upon the number length desired for each counter of the bank. In the embodiment of FIGURE 8 four elements 200 are shown in each column. The elements in rows 1, 2, and 3 are those holding three hits of a number to be incremented or decremented, while the element in row four is utilized merely to indicate when a full count is reached. Only two columns of elements 200 are shown in FIGURE 8, i.e., columns 1 and 10, but it is to be understood that columns 2-9 are also included in the counter bank. However, before continuing further with the description of FIG. 8, reference is now made to FIGURES 9 and 10 in order to understand the construction and operation of each of the elements 200. Each element 200 is generally comprised of a single magnetic thin film core 202 of the type previously described with its PMA in the direction indicated by the double ended arrow. One leg or branch 203a of a hairpin sense winding 204 is inductively coupled with core 202 so that its axis is transverse to the PMA, while the other leg 203i) lies outside of core 202 so as not to be affected by any flux change therein. A drive winding 206 is also inductively coupled with core 202 such that its axis is transverse to the PMA, while a word drive winding 208 is inductively coupled with the core but parallel with said PMA. Both legs 203a and 2031: of the sense winding 204 are seen to be inductively coupled with drive winding 206 so that each leg of the former has an EMF induced therein directly by current change in the latter because of mutual air coupling. These directly induced EMFs, however, oppose each other so that the net directly induced EMF in sense winding 204 is at all times equal to zero. This novel hairpin arrange- 16 ment prevents false output signals, since as will be subsequently described, an output signal from winding 204 is only desired when there is proper change in flux in core 202.

Turning now to FIGURE ID, the direction of applied magnetic fields H and fiuxes B will now be described. For the purpose of this discussion it is assumed that the remanent fiux lying in the direction of 8(1) along the PMA is indicative of a stored binary I in core 202, while flux in the direction of B(0) is indicative of a stored 0. Current flowing through drive winding 206 in the direction of arrow 210 is assumed to generate a field having a di rection H (1) which attempts to switch the core remanant magnetization therein to the Btl) direction. Current flowing in the opposite direction 212 through drive winding 206 produces the field H (0) which attempts to switch the core remanent magnetization to the 3(0) direction. However, the magnitude of the H O) field or the H (0) field is not sumcient by itself to cause any substantial rotation of the flux in core 202. There mu.t be also concurrently applied a field H which is generated by current in the word winding 208 in either direction such as indicated by arrow 214. The field H is transverse to the PMA of core 202. The relative amplitudes of the drive line fields H and of the word line field H are shown on the switching and creep threshold diagram of FIGURE 11. H and H each individually is below the creep threshold but their vector sum H +H is above the switching threshold. Hence, the film 202 switches (i.e., flux B rotates from one remanent state to the other) when both are concurrently applied. Experimental evidence indicates that a switching time of the order of 4 nanoseconds can be achieved in this mode.

Returning now to the counter bank of FIGURE 8, the word windings 208 of all elements 200 in the same column are connected in series one with the other so as to form a common word winding individual to each column. In FIGURE 8 only two of these common word windings 216 and 218 are shown for each of the two disclosed columns 1 and 10 of the counter bank. It is to be understood that each of the missing columns 2-9 also has a word winding common thereto which is formed by the series connection of the word windings of the elemerits therein. The sense windings 204 of the elements in each column also are connected in series to form a common sense winding individual to each column in the manner of 220 and 222 shown for columns 1 and E2 in FIGURE 8. It will be arbitrarily assumed that a common sense winding has induced thereon a positive pulse when any film inductively coupled therewith in a column switches from a binary 0 state to a binary 1 state. whereas a negative pulse is induced on the sense winding whenever any film in its column switches from a binary l to a binary 0 state. The drive windings of elements 200 in the same row are also connected in series so as to form a drive line for each of the rows of the counter bank array. These row drive windings are numbered 224-227 in FIGURE 8.

In order to selectively apply current to each of the word windings, an individual element such as a bistabic flip-flop is employed. Two such fiip-fiops 230 and 232 are shown in FIGURE 8 each respectively individual to columns 1 and 10. Word winding 216 for column 1 is connected to the 1 output terminal of fiip-tl0p 230 whereby current flows through winding 216 only when fli -flop 230 is set to its 1 state. This setting may be accomplished by either of two signals applied to a logical OR gate 234 which is in turn connected to the set (or 1) input terminal of the flip-flop. One such signal is identified as SET which is applied in common to all corresponding OR gates one for each column, whenever switch contact 238 is closed. The other input to OR gate 234 is derived from lead 530 whenever flip-flop 441 is in its 1 state at the time AND gate 454 is sampled. In similar fashion, OR gate 236 of column 10 derives an input signal from lead 539, while columns 2-9, respectively, have their flip-flops set by signals derived from respective output leads 531-538. Each flip-flop is further reset to a condition by any one of three signals applied to a second OR gate such as 240 for column 1, 242 for column 10. OR gate 240 has one input derived from a switch 244 which, when closed generates a Clear signal applied in common to all of the corresponding OR gates of the counter bank columns. OR gate 240 also receives inputs from AND gates 246 and 248 for column 1. OR gate 242 receives inputs from AND gates 250 and 252 in column 10, while AND gate 246 is enabled only when the count is to be decremented in counter bank by the closing of switch contacts 254, while AND gate 248 is enabled only when the count is to be incremented by the closing of switch contacts 256. Each of the signals Increment and Deeremcnt from re spective switches 254 and 256 is applied in common to corresponding AND gates of the counter columns. Each AND gate in the column circuitry is also responsive only to a different polarity of a signal induced upon the output sense winding associated with that column. For example, in column 1 a transformer 260 has its primary connected with sense Winding 220 via a driver 262. The secondary of transformer 260 is grounded at a center tap thereof, with one end being connected to AND gate 246 and the other end connected to AND gate 248. A positive EMF induced on sense winding 220 is assumed to apply a positive signal to AND gate 243 and a negative signal to AND gate 246, Whereas a negative signal induced on sense winding 220 is assumed to apply a positive signal to AND gate 246 and a negative signal to AND gate 248. Consequently, if switch 254 is in its closed condition when any one of the elements 200 in column 1 is switched from its binary 1 to its binary 0 state, AND gate 246 produces an output signal which is applied to the 0 input terminal of flip-flop 230. On the other hand, if switch 256 is in its closed condition when any one of the elements 200 in column 1 is switched from its binary 0 to its binary 1 condition, then AND gate 248 generates an output signal which is also applied to the 0 input terminal of flip-flop 230. Each of the other counter bank columns has its corresponding pair of AND gates connected in similar fashion through a transformer with the column sense winding as evidenced by column in FIGURE 8.

Each of the drive input windings 224-227 is respectively connected with a different one of a group of signal generators 270-273. Each of these generators may be comprised of well known circuitry which, when actuated, pro duces a single pair of time spaced pulses of opposite polarity such as shown in FIGURE 12. For example, generator 270 upon application of a signal to its input 274 is assumed to first generate a pulse 276 of negative going polarity followed a short time later by a pulse 278 of positive going polarity. On the other hand, if an input signal is applied to its input terminal 280, then the first output pulse 282 therefrom is of positive going polarity shortly followed by a pulse 284 of negative going polarity. Generator 270 in actual construction may therefore consist of a first astable trigger circuit responsive to input 274, and a second astable trigger circuit responsive to input 280. However, other constructions of the generator are considered to be well within the scope of this invention so long as the required generator functions are present. In similar fashion each of the other generators 271, 272, and 273 selectively produces first a negative going pulse and then a positive going pulse when their respective inputs 286, 288, and 290 are energized, or alternatively produce first a positive going pulse followed by a negative going pulse when their other inputs 292, 294, and 296 are energized. FIGURE 12 also shows that the pulse pairs produced from generators 271L273 are also spaced in time one from the other without overlap such that the drive windings 224-227 are sequentially actuated. One well known technique of obtaining sequential energization of the generators is by use of serially connected delay lines. Thus delay lines 300, 302, and 304 are connected in a series circuit one end terminal of which is connected with the Increment switch 256. Generator inputs 274, 286, 288, and 290 are connected to this delay line series circuit in the manner shown so that voltage signals arrive at these generator inputs at different times beginning with the generator 270. When switch 256 is closed, voltage first appears at input terminal 274 for energizing generator 270 to produce first a negative pulse and then a positive pulse on drive winding 224. Delay line 300 is designed to prevent the application of this switch 255 voltage to terminal 286 until the positive going pulse 278 from generator 270 has been terminated. Generator 271 is then energized to produce a pair of negative and positive pulses, with delay line 302 preventing the application of the switch voltage to generator 272 until generator 271 has finished its operation. Generator 272 is then fired, producing first a negative and then positive going pulse. Delay line 304 next applies the switch voltage to terminal 290 of generator 273 so that the remaining drive winding 227 is actuated at a time following the actuation of the other drive windings. FIGURE 12 shows these sequential outputs from the generators, each generator output comprised of a pair of time spaced pulses of opposite polarity. In similar fashion, a group of delay lines 306, 308. and 310 are connected in a series circuit one terminal of which is connected to the Decrc ment switch 254. These delay lines then permit time spaced application of energizing signals to terminals 280, 292, 294, and 296. so as to cause the sequential operation of generators 270-273 in this order. For these energizing signals, however, each generator first produces a positive going pulse 232 followed by a negative going pulse 284 in the manner shown in FIGURE 12.

In order to place an initial predetermined count into each of the counting columns from which values may then be added or subtracted, a group of switches 3I2-315 are provided each connected to respective row drive windings 224227 via respective ganged contacts 31ti319. For example, to preset a binary i into each element 200 of row 1, the SET switch 238 is closed to place all flip-flops 230 et al. into a binary 1 state so as to generate the field H for each column. Switch 312 is moved to its negative terminal and contact 316 closed to produce current flow through winding 224 in a direction to generate the field H (1) (FIGURE 9) in each element 200 of row 1. The combination of H (1) and H therefore rotates the flux in each of these row 1 elements to the 13(1) direction. Switches 313, 314, and are likewise set to either their positive or negative terminals so as to store either a l bit or a 0 bit in the elements 200 in their respective associated rows 24.

An output signal is taken from each counter column across the sense winding of that element therein which is the last to be pulsed in the generator sequence of FIGURE 12. In FIGURE 8 this is seen to be the row 4 element of each column. Output terminal 320 is connected across the sense winding of said row 4 element in column 1, while a similar output terminal 322 is connected across the row 4 element in colttmn 10. The row 4 elements in each of the remaining columns 2-9 also have output terminals similarly connected thereacross.

The operation of the system in FIGURE 8 will now be described. For incrementing by a multibit number, the following rules are executed on each bit thereof in sequence beginning with the lowest binary order and ending with the highest binary order:

(1) If a bit is I, change it to 0 and proceed to the next higher order bit;

(2) If a bit is 0, change it to 1 and refrain from changing any higher order bit.

For decrementing by 1, the same rules (I) and (2) are used but with the bit values and 1 interchanged. That is to say, if a bit is 0 change it to 1 and proceed to the next higher order bit, whereas if a bit is 1 change it to 0 and then stopv The binary order significance (2", 2 2 etc.) of the elements 200 in each column is determined solely by the sequence in which their drive windings are actuated and not by their physical locations. In FIGURE 8, therefore, each row 1 element stores the lowest order or least significant bit of the number whereas the row 3 element of each column stores the highest order or most significant bit of the number. The row 4 element is merely used to obtain an output from the counter column and so is not considered to store a bit of the number operated upon. Consequently, each counter column in FIGURE 8 is capable of storing and operating upon a three bit number contained in its row 1, 2, and 3 elements.

The operation of incrementing will now be described in detail by considering three counting steps, First assume that before starting any counting operations, an initial positive count of 101 (decimal is to be inserted into each column register. Each column control llip-flop is set to its 1 state by closure of switch 238 in order that each word line of a column has current flow therethrough. Switches 312 and 314 are moved to contact their negative terminals, while switches 313 and 315 are moved to contact their positive terminals. Ganged switches 316319 are then closed to provide negative current flow in lines 224 and 226 in the direction of arrow 210 (FIGURE 9), while positive current flow occurs in digit lines 225 and 227 in the direction of arrow 212. The row 1 and row 3 elements of each column are therefore driven to their binary l flux condition 13(1) (FIGURE while the row 2 and row 4 elements of each column are driven to their binary 0 flux condition B(0). Contacts 316419 are now opened and switch 244 is temporarily closed to place each column flip-flop into its Clear condition to terminate the word winding current. Next assume that only the numbers in columns 1, 4, and 10 are to be incremented during the counting operation. Each of the flipflops associated with these three columns is now once again placed into its 1 state by means of signals applied to their respective inputs 530, 533, and 539 via OR gates 234 et al. Thus during the following sequential operation of generators 270 et al, only word windings of columns 1, 4, and 10 will have current flow therethrough.

Table 2 below should now be referred to for a complete understanding of the count operation.

TABLE 2 (INC RE MENT) application of a negative going pulse and then a positive going pulse on its respective drive winding. The first generator to be energized is 270 from which first appears a negative going pulse 276 applied to drive winding 224 in order to drive each row 1 element of columns 1, 4, and 10 to its binary 1 state. However, since each said row 1 element already is in its binary 1 state, there can be no rotation of the flux therein because the field H U) is applied in the same direction as lies the existing flux B(1). Consequently, there is no E.M.F. induced on the output sense windings of columns 1, 4, and 10 because there is no change in a core 202 remanent magnetization linking these sense windings. The column 1, 4, and 10 fiip-fiops therefore remain in their 1 state. The second pulse of the pair from generator 270 is a positive going signal 278 which attempts to switch each of the selected row 1 elements from a binary l flux state to a binary (I flux state. This switching actually occurs so that each sense winding associated with columns 1, 4. and 10 has induced thereon a negative going signal which is applied across its respective transformer as a negative going signal to AND gate 248 of column 1 (and similar AND gates in columns 4 and 10), and as a positive signal to AND gate 246 of column 1 (and similar AND gates in columns 4 and 10). The negative signal to AND 248 continues to prevent it from generating an output even though switch 256 is now closed, whereas the open contact 254 prevents AND gate 246 from generating an output even though it now receives one positive input. Furthermore, both AND gates in each of the columns 4 and 10 are likewise disabled whereby the flip-flops in each of these three columns remain in their 1 condition.

After generator 270 has finished applying its pair of pulses to winding 224, generator 271 is energized to first apply a negative going and then a positive going pulse to winding 225. The negative going pulse switches the row 2 elements of columns 1, 4, and 10 from their 0 state to their 1 state, thereby inducing on the associated sense windings positive going signals. The positive going signal on output sense winding 220 of column 1 is applied across its respective sense winding tranformer 260 as a positive signal to AND 248 and as a negative signal to AND 246. OR gate therefore produces a signal which resets flip-flop 230 into its 0 state thus terminating current in word winding 216. In column 10, AND gate 252 is also responsive to a positive signal from the secondary of transformer 264 in order to reset flip-flop 232 into (101.1 (01.4 Col. 10

Row

0 1 1 0 a 1 1 a 0 1 1 0 M Table 2 shows only the contents of the column 1, its 0 state and terminate current in Word winding 218.

column 4, and column 10 registers for each of the three counting steps, inasmuch as all other columns are not atlected by the actuation of the drive generators 270 et al. Each of the column positions of Table 2 is in turn divided into several headings labelled (a), (b), (c), and (d) for indicating the value of the number held therein both initially and after termination of each counting step. The (a) heading for each column shows the initial number 101 placed therein by switches 312315, whereas the (b), (c), and (d) headings show how the number in each counter is incremented by 1 at the end of each complete generator sequence. Switch 256 is closed to commence the first counting step so that each film ele' meat 20%] in a selected column is successively first driven toward its 1 state and then toward its 0 state by the Similar circuitry in column 4 also terminates its word winding current. Consequently, when the second pulse of positive going polarity appears from generator 271, it is unable to switch the row 2 elements of columns 1, 4, and 10 back into the state from their newly established 1 state. These row 2 elements therefore now store binary 1.

After the operation of generator 271, generators 272 and 273 are operated in sequence each producing first a negative going and then a positive going pulse on the respective drive windings 226 and 227. However, since the flip-flops of columns 1, 4, and 10 are reset to their 0 state during operation of generator 271, any current in these drive windings is unable to change the binary values held in the row 3 and row 4 elements in each of these columns. Consequently, at the end of the first generator sequence, or counting step, the binary value stored in the respective row 3, 2, and 1 elements of each of the columns 1, 4, and 10 is 110 (decimal 6). The count in the other columns 2, 3, and 4-9 still remains at 101. The row 4 elements of all columns still store binary D.

After generator 273 has been actuated, switch 256 may be opened to reset the generator sequence circuits to a quiescent condition in preparation for a subsequent counting step. Switch 244 is also closed momentarily to supply a pulse through OR gates 240 et al. to insure clearing of all flip-flops 230 et al. to their binary condition. Each flip-flop in counting columns 1, 4, and may be set once more to its binary 1 condition by means of individual input signals applied via lines 530, 533, and 539. Switch 256 is closed once again to add a value of l to each of the numbers in columns 1, 4 and 10 in the following manner. The negative going pulse 276 from generator 270 causes each row 1 core of these selected three columns to be switched from its binary 0 state to its binary I state thereby inducing positive going signals in the respective sense output windings. in column 1 this positive signal is applied across transformer 260 to once again enable AND gate 248 to reset flip-flop 230 into its binary 0 condition. The flip-flops in columns 4 and 10 are likewise reset to 0. Consequently, the next following positive pulse signal 278 from generator 270 fails to return these row 1 elements back to their 0 value condition, because by this time the current in the word windings has been terminated. Pulses from generators 271, 272, and 273 likewise fail to change the bit values of the row 2, 3, and 4 elements of these three columns so that the number standing therein at the end of the second counting step is as indicated in heading (0) of Table 2. The previous value 110 (decimal 6) has been incremented to a value 111 (decimal 7). Switch 256 can now be opened to prepare the system for a third counting step.

If the same counting columns 1, 4, and 10 are to be incremented during the third counting sequence, only the flip-flops thereof are once again set to the binary l condition by respective input signals applied via lines 539, 533, and 539. Switch 256 is then closed to begin the generator sequence. The negative pulse 276 from generator 270 finds the row 1 elements already in their binary 1 condition such that no positive signal is induced on the respective sense windings. Consequently, the selected column flip-flops are still in their 1 condition when the positive going signal 278 is applied to windings 224. This positive pulse drives each selected row 1 element from its binary 1 state to its binary 0 state without, however, causing either of the column AND gates to generate an output signal because of the negative signal induced on the output sense winding. The selected column flip-flops therefore are still in their 1 condition at the time that generator 271 begins to apply pulses to winding 225. It will be observed from Table 2 that both the row 2 and row 3 elements of the selected columns also store a binary 1 which is changed to binary 0. When generator 273 is finally actuated, the binary 0 contained in the row 4 elements of these three columns is changed to binary l, thereupon inducing a positive signal on the sense windings which is of proper polarity to cause the selected column flip-flops to be reset to their 0 condition. Furthermore, when the row 4 element of each column 1, 4, and 10 is switched from 0 to I, an output signal appears at the respective output terminal for each of these three columns to indicate that the number therein is now at some predetermined value, i.e. (100 (decimal O).

In order to decrement a count in each of several selected columns, the flip-flops of all columns are first cleared to their 0 condition by a pulse from switch 244 through OR gates 240 et 211., then the flip-flops of said selected columns are set to their 1 condition by respective inputs thereto on lines 530 et al. Switch 254 is now closed to permit each generator in sequence to produce first a positive and then a negative going pulse on the respective drive windings. Table 3 given below illustrates the decrementing of selected columns 1 and 8 of. the counter bank, with each column assumed to have been set to an initial count of 011 (decimal 3) by means of switches 312-315. The row 4 element of each selected column is set to l). The flip-flops of columns 1 and 8 are then set to 1 by pulses on their respective Input lines 530 and 537, and switch 254 is closed to begin the first counting step. Generator 270 now applies a positive pulse 282 to winding 224 which switches the row 1 elements of columns 1 and 8 from their binary l to their binary 0 state. This flux switching generates negative going signals on the respective sense windings which, when applied across the sense winding transformers, causes a positive signal to be applied to AND gate 246 and a negative signal to be applied to AND gate 248 in the case of column 1, with similar AND gates in column 8 also receiving similar signals. Since AND gate 246 in column 1 also has applied thereto a positive signal from now closed switch 254, it resets flip-flop 236 back to 0 thus terminating current in word winding 216. Current in the column 8 word winding is similarly discontinued. Thus, when the negative going signal 284 is now applied by generator 270, it fails to return the row 1 elements back to a binary 1 state due to the absence of this word winding current. Pulses applied to respective drive windings by generators 271-273 likewise fail to change the bits stored in the row 2, 3, and 4 elements of columns 1 and 8, so that the number contained in each at the end of the first generator sequence is that given by the headings (b) of Table 3. It can therefore be seen that the original count of 011 (decimal 3) has been decremented by 1 to a count of Olt] (decimal 2). Switch 254 is now opened to reset the generator circuits for a succeeding count step.

To condition the counter bank for a second counting sequence, all flip-flops are cleared to their binary 0 condition by a switch 244 pulse. If the same columns 1 and 8 of the matrix are to be decremented during the second count step each has its flip-flop once again set to binary l by signals on their respective inputs. Switch 254 is once again closed to commence the generator sequence. The signal 282 from generator 270 produces the field H (0) which attempts to drive the selected row 1 elements to the binary 0 state. However, each row 1 element of columns 1 and 8 already is in its binary 0 state at this time. When a negative going signal 234 next appears from generator 270, it drives the row 1 elements from the binary 0 to the binary 1 condition which thereupon induces positive going signals on the respective sense output windings. This positive going signal is applied as a negative signal to AND gate 246 in column 1 (and to a similar AND gate in column 8) so as to prevent these AND gates from resetting their respective flip flops. Although the sense winding transformers also apply a positive signal to AND gate 248 (and to a similar AND gate in column 8) these latter two AND gates cannot generate signals because switch 256 is open at this time. Therefore, the column 1 and column 8 flip-flops remain in their 1 condition by the time the generator 271 is activated. The first applied positive pulse from generator 271 causes the selected row 2 elements to switch from binary 1 to binary 0 and thus produce negative signals on the sense windings which are of proper polarity to reset the column flip-flops. Thereafter, the column 1 and 8 elements cannot have their values changed by pulses from the remaining generators 272 and 273. The count in each column at the end of the second generator sequence is 001 as shown in heading (0) of Table 3.

If a third counting step is initiated with the column 1 and column 8 flip-flops once again set, the count is changed therein from 001 (decimal l) to 600 (decimal The row 4 element still remains in its binary 0 condition since the selected column flip-flops will have been reset prior to actuation of generator 273. However, if a fourth counting step is subsequently commenced, the binary 0 in each of the row 4 elements of columns 1 and 8 is changed to binary l, whereupon an output signal is produced at the said respective output terminals. The row 3, 2, and 1 elements of these selected columns will store binary ls at the conclusion of this fourth counting step, so that the number held in column 1 and 8 is 1111 which conveniently may be considered as l in decimal notation.

TABLE 3 (DECREMENT) Row 0 l i (v) 1 0 1 0 1 1 (l 1 0 1 U2) 1 1 (l 0 1 1 1 (l 0 l 212 0 0 0 0 1 0 0 0 l) 1 3(2 0 0 l) l) 1 0 U 0 l) l 4 There are several further points of interest with respect to the system of FIGURE 8. The time interval between the two opposite polarity pulses coming from any generator must be at least as long as the time required for a column flip-flop to switch from its 1 condition back to its 0 condition. This is so, since the second applied pulse of a pair must not be allowed to switch flux direction whenever the first applied pulse of that pair has produced a signal on the output sense winding which is of proper polarity to reset the associated flip-flop to its 0 condition. Another point of interest is the fact that the row 4 elements can be initially set to a binary 1 condition if so desired rather than the binary 0 condition shown in Tables 2 and 3 in order that output signals of an opposite polarity may be obtained. There is one other consideration which should be taken into account. FIGURE 13 shows a vector diagram for the two rotational processes of film magnetization encountered in each core 202. Assume that every core in a particular column is in its binary 0 state at the time that the column flip-flop is set to its 1 condition. Upon initiation of current in the word winding, the field H is produced which is applied transverse to the PMA of each element in the column. Although H by itself is not sufficient to rotate the ilux to the opposite 8(1) direction, it is sufficient to slightly rotate the fiux from its B(0) position through small angle a to a B position. If the H (1) field is later applied to these column elements, the element flux is further rotated through angle at to a 13(2) position which is not quite parallel to the PMA because of the continued effect of the transverse field H the flux at B falls to the B(1) position along the PMA. FIGURE 13 consequently shows that there is a slight rotation of the element flux even when only the word field H is applied to a film, whereas a much larger rotation occurs when both the H (l) and H fields are concurrently applied. Both cause the same polarity of induced signal in the sense line although it is only when an H field is applied that said output signal is considered to have any logical significance. However, if all or most of the elements in a column are in their binary 0 state at the time that the column flip-flop is initially set on, then sense winding signals induced by flux rotation through angle a, when added together in the common sense line, could look like a switching signal of the magnitude induced when the rotation is through angle 5. This pseudo output signal would be of proper polarity to reset the column flip-flop even before any counting sequence could begin. In order to avoid such erroneous resetting, the column flip-flops are preferably designed to be insensitive to input signals applied to their 0 condition side immediately following a change to their 1 state for a period of time longer than the time required for the sense winding induced signals to feed back through the transformers and gating logic. Other techniques could be employed to prevent the column flip-flops from being reset in error.

FIGURE 14A is a simplified version of FIGURE 8 wherein only incrementation or decrementation, but not both, can occur. Both AND gates and the transformer of each column are eliminated, with each column sense winding being connected via a driver directly with the OR gate to the 0 condition input side of the column flip-flop. For incrementing only, switch 254 and delay lines 306, 308 and 310 are further eliminated from FIGURE 8, while each driver, as 262 in FIGURE 14A, is designed so that a positive output appears therefrom whenever a O to 1 change is made in its associated column element. On the other hand, where the simplified circuitry is to per form only decrementation, then switch 256 and delay lines 300, 302, and 304 may be eliminated while each sense winding driver is designed to generate a positive signal for a 1 to 0 flux change in its associated column element.

FIGURE 1413 shows another, more extensive, modification of the FIGURE 8 system when only incrementing of the counter bank is desired. The change here contemplated involves the total number and connections of the logic elements for each column. Each column flip-flop in FIGURE 14B can be set to its 1 condition by a SET signal applied upon closing of a switch such as switch 238 in FIGURE 8. The flip-flop 326, for example in column 1, can be reset to its 0 state by a Clear signal applied as from a switch 244 in FIGURE 8. Each column flip-flop further has two complementing inputs connected to a common input lead shown as conductor 328 for column 1. A negative signal supplied to lead 328 changes the state of the fiip-fiop from 1 to 0 and from 0 to 1. A column 1 sense winding 330 detects a positive signal when a film in the column switches from a 1 state to the 0 state and a negative signal when a film switches from the 0 state to the 1 state. A single OR gate 332 for column I is designed to pass only negative signals. The flip-flop 326 in the 1 state causes current to flow in its associated word line 334, and a film in column 1 can be switched by a pulse on a drive winding 336 only in the presence of current in the word line. Under the assumption that flipflop 326 is initially in its 0 condition, a negative input pulse applied via 530 to OR 332 sets the fiipfiop to its 1 state whereupon a transverse field is applied to each element of its associated column 1. The column drivc windings are then sequentially pulsed as in FIGURE 8 by pairs of alternating polarity pulses, the first pulse being negative going and the second pulse being positive going. If a film switches from 0 to 1 at the application of a negative pulse to its digit line, the negative signal induced on its associated sense line is transmitted by OR gate 332 to input lead 328 and thus returns the flip-flop to its 0 state so that subsequent digit line pulses cause no more films on that word line to switch.

FIGURE 14C shows still another modification of FIG- URE 8 which is particularly useful where null outputs are to be counted and EMF signals ignored as is the case for the coincidence matrix of FIGURE 5 and/or 5A. Each column of the modified counter bank, as shown by column 1 in FIGURE 14C, is comprised of a flip-flop 327 which is set ON by :1 SET signal as applied by switch 238 in FIGURE 8. The 1 state of the flip flop causes current to flow in its word winding 325 so that the column 1 elements 200 can be switched by appropriate current pulses in the horizontal drive windings. The column 1 sense winding 329 is fed through a driver 331 back to an OR gate 333 which in turn is connected to the 0 condition input of flip-flop 327. Where only incrementation or decrementation is desired, as in FIGURE 14A, no AND gating logic need be provided. Also supplied as inputs to OR gate 333 are a CLEAR signal (as from switch 244 in FIGURE 8) and a signal appearing on coincidence matrix sense winding from FlGURE 5. Similar OR gates in columns 210 would also receive signals from respective ones of the remaining coincidence matrix sense windings 166174. In operation, all column flip-flops are set to 1 prior to interrogating the coincidence matrix by means of contacts 185-189. Those EMF signals thereafter appearing on the coincidence matrix sense windings will reset their respective column llipd'lop to binary D, but null signals permit their column flipfiops to remain at 1. Thus, the advantage of the FIGURE 14C construction is that the additional flip-flops 441-450 and AND gates 454-463 can be eliminated from the coinci deuce matrix output without sacrifice of the required counting function.

FIGURE 15 illustrates still another embodiment of a thin film counting bank wherein selected counting register columns may be simultaneously incremented. A plurality of magnetic thin film column elements 340 are arranged in a group of columns and rows. The number of columns, for example 10 (of which only columns 1 and 10 are shown in detail), depend upon the number of multibit values to be simultaneously incremented. The number of rows, for example, four, depend upon the number of bits comprising each word to be incremented with one of the element rows being provided merely to detect counter overflow or underflow. Before continuing with the description of FIGURE 15, reference is now made to FlG URES l6 and 17 for a description of the construction and operation of each magnetic thin film element 340 of the array. Each element 340 is comprised of a magnetic thin film core 342 of the uniaxial and anisotropic variety have a preferred magnetic axis lying in the direction indicated by the double-ended arrow. Inductively coupled with film 342 is a sense winding 344 whose axis is transverse to the PMA at substantially a right angle therewith. Also inductively coupled to film 342 is a word winding 346 adapted to conduct current in either direction therethrough for generating a magnetic field H within core 342 in either direction along its PMA. A drive winding 348 is further inductively coupled with core 342 such that its axis lies substantially parallel to the PMA so that current flow therethrough in the direction of arrow 354 produces a field H which is transverse to the PMA. All of the windings 344, 346, and 348 are electrically insulated one from the other. FIGURE 17 is a vector diagram showing the general orientation of the external fields produced by windings 346 and 348, together with the general direction of the flux B within core 342. In the absence of any external field applied to core 342, the remanent magnetization therein lies approximately parallel to its PMA in either the direction indicated by 13(1) or the direction indicated by 13(0), with the number in the parentheses indicating the binary value assigned to each flux direction. However, upon application of current to drive winding 348 in the direction of arrow 354, it is assumed that a field H is generated in the direction shown in FIGURE 17 which is of sufiicient magnitude to rotate the flux in core 342 to the direction shown by B It field vl-[ is then subsequently terminated, the fiux within core 342 has the option to fall to either side of its perpendicular B so as to lie either in the EU) direction or the B() direction. The actual direction in which the flux falls is determined by the direction of a longitudinal field H which is essentially parallel to the core PMA. This field H is produced by current in the word winding 346. If current flow in winding 346 is in the direction of arrow 350, the field H (1) causes the remanent magnetization of core 342 to fall in direction 13(1). On the other hand, if current fiow in winding 346 is in the direction of arrow 352, a field H fll) exists which causes remanent magnetization in core 342 to fall in the direction of 13(0) when field H terminates. Since the sense winding 344 is inductively coupled to core 342 at an angle transverse to its PMA, a voltage of one polarity will be induced in the sense winding whenever the core flux rotates from B(0) to B or reverts to the position B(1) from B while a voltage of opposite polarity is induced in sense winding whenever the core flux rotates from 8(1) to B;- or reverts from B to B(0).

Returning now to FIGURE 15, the word windings 346 of all of the elements 340 within the same column are connected in series so as to form a common word winding individual to each column of the matrix. For example, the word winding 356 is common to all of the elements in column 1 of the matrix, while a word winding 358 is common to all of the elements in column 10. Columns 29 likewise have word windings individual thereto. In similar fashion, the sense windings of all elements 3% in the same column are connected in series to form a winding individual to each matrix columns. This is shown in FIGURE 15 by sense windings 360 for column 1 and 362 {or column 10, with columns 29 having similar individual sense windings coupled to all elements in the respective columns. In order to provide cancellation of signals directly induced on a sense winding by mutual coupling between it and a word winding, each column sense winding is seen to be formed with an upward return leg to ground so that EMF signals are induced therein which equally oppose the signals induced in the downward leg. The drive windings of elements in the same matrix row are likewise connected in a series circuit to thereby form input drive windings common and individual to each row. These drive windings are identified as 364-367 for rows 1-4, respectively.

Interconnected with the word winding and sense winding for each column are a plurality of logic elements whose number and configuration are identical for each matrix columns. The elements associated with column 1 will he described in detail with the understanding that each of the other columns 2-10 is similarly constructed. A bistable element. such as flip-flop 370, is provided which can be individually set to either a 1 condition or a 0 condition by signals applied to the respective inputs thereto. The flip-flop 370 can be set to its 1 condition by either of two signals applied via an OR gate 372. One of these signals is applied whenever switch 374 is closed to generate a SET signal applied in common to all of the matrix columns. The other input signal to Ol. gate 372 comes via the input lead 530 individual to column 1 which is pulsed whenever said column count is to be incremented by l. A second OR gate 376 is provided to which are applied two signals either of which can set ilipdlop 370 to its 0 condition. One such signal occurs whenever switch 378 is closed to generate Clear signal applied in common to all of the matrix columns. The other signal to OR gate 376 is provided via a delay line 380 from the output of an AND gate 382. AND gate 382 has inputs from a variety of sources. One such input is from the 1 output of flip-flop 370 while another input is from an inverter element 384. A third input to AND gate 382 is provided by a CLOCK signal which is applied in common to all of the columns. A second AND gate 386 derives inputs from the 0 output terminal of fiip-fiop 370 and from the 1 output of a second l'lipflop 389. The CLOCK signal is also applied to AND gate 386 and the 1 output of flip-flop 389 is applied to inverter 384. Both AND gates 382 and 386 feed into an OR gate 390 which in turn is connected to a 1 driver 392. This 1 driver has its output connected to the word winding 356 of column 1. The purpose of the 1 driver 392 is to generate current in the word winding 356 in either one of the two directions indicated by arrows 350 and 352 of FlGURE 16. When driver 392 is actuated by an output from OR gate 390, it is assumed to produce current in the direction of arrow 350 so as to generate the field H (1) shown in FIGURE 17. However, during the absence of a signal from OR gate 390, driver 392 is biased to produce current flow in the opposite direction 352 so as to generate the field H HI).

An induced EMF signal on sense winding 360 is applied via a driver 394 to the input of Strobe gate 388. Strobe gate 388, upon application of a Strobe signal,

passes only a positive input signal to its output. This output in turn is connected to the 1 input of flip-flop 389. Thus, each strobe gate permits the blanking out of any unwanted signals from the sense winding, since it receives a STROBE pulse only at the time that a signal is expected from the sense winding driver.

Each of the row drive windings 364367 is connected to a respective one of pulse generators 395-398. Each generator, when an input signal is applied thereto, gen crates an output pulse sufiicient to cause current flow in its respective drive winding to thereby produce the transverse field H shown in FIGURE 17. The generators are actuated in sequence conveniently provided by a plurality of delay lines 399, 400, and 401 connected in series circuit and from which are tapped inputs 402, 403, 404, and 405 to respective generators 395-398. One end of the delay line series circuit is connected with a switch 406. Thus, when switch 406 is closed, a voltage signal is first applied to input 402 of generator 395 so as to enable it to produce the drive pulse for winding 364. The first delay line 399 delays application of voltage to the input 403 of generator 396 until such time as the pulse from generator 395 has disappeared. Generator 396 is then actuated in turn with delay 400 being sufiicient to prevent actuation of generator 397 until current flow is terminated in winding 365. Delay 401 likewise causes generator 398 to be the last operated.

In order to generate a STROBE, CLOCK and flip-flop 389 CLEAR signal for each of the generator 395-398 pulses, an OR gate 385 accepts each of said generator pulses for inversion by invertor 387. Each such inverted pulse is directly applied to the clear input of flip-flop 389 (and similar flip-flops in each of the remaining columns 2-10). The output from OR 385 via inverter 387 is also delayed slightly by a delay line 391 and then used as the STROBE signal. to gate 388 (and the Strobe gates of columns 2-10) so that, if a positive signal is induced on a sense winding by a flux change from B(1) to B a STROBE pulse arrives at gate 388 at the same time as does said induced signal. Another delay line 393 is used to generate a further delayed CLOCK signal from each of the generator pulses. Its purpose is to provide synchronization between each generator pulse and the current pulse in a column word winding, with there being a small overlap between these two pulses such that the generator pulse is terminated while the word pulse is still on. It should also be noted that flip-fiop 389 is always cleared to prior to the appearance of each CLOCK pulse, but a positive signal on sense winding 360 is strobed through to set said flip-flop to its 1 condition in time to apply a positive signal to AND gate 386 during the CLOCK pulse period.

The operation of the system in FIGURE 15 may be more readily understood by the reference to Table 2 above. Assume that prior to a first incrementing step, a bit configuration of 0101 respectively exists in the row 4, 3, 2, and 1 elements of each column such as is shown in heading (a) of Table 2. This initial bit configuration may have resulted from previous incrementing steps, or may be provided by additional means for setting each column to any desired initial count, as by switches 312- 315 in FIGURE 8. Next assume that this initial number of 101 (decimal 5) is to be incremented only in columns 1, 4, and 10. After clearing all column flip-flops to 0, input signals are selectively applied only to the 1 input terminals of the flip-flops of columns 1, 4, and 10. For example, flip-flop 370 of column 1 is set to its 1 condition by a pulse applied on lead 530 to OR gate 372, while a pulse on lead 539 is applied to OR gate 412 in column 12. From this point on, description of the counter bank operation is limited to the incrementing of column 1, but it is to be understood that identical functions are oc curring in both column 4 and column 10. The setting of flip-flop 370 to its 1 condition thereby permits AND gate 382 to be responsive to signals applied to its other two input terminals, but shuts AND gate 386. Switch 406 is now closed to start the first generator sequence. Generator 395 issues a pulse to drive input winding 364 which creates a field H at all row 1 elements 340 so as to rotate the remancnt magnetization in each core 342 from its 13(1) direction along the PMA to its B direction transverse to the PMA. In so doing it is assumed that the sense winding 360 has a signal of positive polarity induced therein which is strobed through gate 388 to set fiip flop 389. A negative signal is applied to AND gate 382 to thereby prevent a CLOCK pulse from passing therethrough even though flip'flop 370 also applies a positive signal thereto. Therefore, no output is obtained from AND gate 382, nor is there any output from AND gate 386 due to the fact that flip-flop 370 applies a negative signal to one of its inputs. The driver 392 therefore remains in its 0 condition whereby the DC. bias products a current through word winding 356 in the direction of arrow 352 setting up field H (0). The pulse from generator 395 eventually is terminated so as to discontinue the field H The transverse flux B now falls to a direction 13(0) along the PMA because of field H UJ). Thus, the 1 bit stored in the row 1 element of column 1 has been changed to binary 0 upon application of the pulse to digit line 364.

Generator 396 now produces a pulse on drive line 365 of the row 2 elements. Each row 2 element contains a binary 0 bit as evidenced by the remancnt fiux direction B(0). Upon application of the pulse from generator 396 a field H is produced which rotates the flux from 13(0) to B thereby inducing a negative going signal in sense winding 360. This negative sense signal fails to pass through Strobe gate 388 so that flip-flop 389 remains in its 0 condition after being cleared. Consequently, when the CLOCK pulse appears to AND gate 382, all of its inputs are positive thereby generating an output signal to driver 392 which changes the current in winding 356 to a direction shown by arrow 350. When the current in drive winding 365 is terminated by the disappearance of the pulse from generator 396, flux B now falls in the direction of 13(1) because of the field H (1) now applied by current in winding 356. Thus, the 0 bit in the row 2 elements of columns 1, 4, and 10 has been changed to 1. The output from AND gate 382 is further transmitted via delay 380 back to OR gate 376 to thereby switch flip-flop 370 into its 0 condition. The purpose of delay 380 is to insure that flip-flop 370 is not switched from its 1 condition prior to the time that the pulse on drive winding 365 disappears. The reason for this is that the 1 driver 392 must be kept energized by the output from AND 382 until the flux has been returned to 13(1) along the PMA. By the time that generator 397 is energized, flip-flop 270 is not in its 0 condition. The pulse on winding 366 rotates the flux in each row 3 element from Bil) to B and in so doing produces a positive going signal on sense output winding 360. A positive signal is thus applied to AND gate 386 which is also enabled by the positive output from the 0 terminal of flip-flop 370. Thus, upon the appearance of a CLOCK pulse AND gate 386 now operates to energize driver 392 for applying a current in the direction of arrow 350 so as to produce the field H tl). The presence of this field at the time that the pulse disappears from winding 366 causes flux in the row 3 element to rotate back to 13(1), thus restoring binary 1.

When generator 398 is finally energized, the field H rotates the flux in the row 4 element from a direction B(0) to B thus producing a negative signal on sense winding 360. This negative signal fails to set flip-flop 389 to 1, thus preventing AND gate 386 from producing an output signal upon occurrence of a CLOCK pulse. AND gate 382 is aiso not permitted to generate an output due to the 0 condition of flip-flop 370. Consequently, neither AND gate 386 or 382 generates an output during the pulsing of drive winding 367 and driver 392 fails to 

30. A COUNTER BANK COMPRISING: (A) A PLURALITY OF BISTABLE MAGNETIC THIN FILM ELEMENTS OF THE SINGLE PREFERRED MAGNETIC AXIS TYPE WHICH ARE ARRANGED IN A NUMBER J OF COLUMNS EACH WITH A NUMBER N OF ELEMENTS; (B) A NUMBER J OF WORD WINDINGS WITH EACH JTH WORD WINDING (WHERE 1$J$J) BEING INDUCTIVELY COUPLED WITH EVERY ELEMENT OF THE RESPECTIVE JTH COLUMN SUCH THAT CURRENT FLOW THEREIN APPLIES A FIRST MAGNETIC FIELD SUBSTANTIALLY TRANSVERSE TO THE PREFERRED MAGNETIC AXIS OF EACH COUPLED COLUMN ELEMENT; (C) A NUMBER N OF DRIVE WINDINGS WITH EACH NTH DRIVE WINDING (WHERE 1$N$N) BEING INDUCTIVELY COUPLED WITH THE RESPECTIVE NTH ELEMENT IN EACH JTH COLUMN SUCH THAT CURRENT FLOW THEREIN APPLIES A SECOND MAGNETIC FIELD SUBSTANTIALLY PARALLEL TO THE PREFERRED MAGNETIC AXIS OF EACH COUPLED NTH ELEMENT; (D) A NUMBER J OF SENSE WINDINGS, WITH EACH JTH SENSE WINDING BEING INDUCTIVELY COUPLED WITH EVERY ELEMENT IN THE RESPECTIVE JTH COLUMN SUCH THAT EITHER A FIRST POLARITY EMF OR A SECOND OPPOSITE POLARITY EMF IS RESPECTIVELY INDUCED THEREON BY A REVERSAL OF FLUX PARALLEL TO THE PREFERRED MAGNETIC AXIS IN ANY ONE OF ITS COLUMN COUPLED ELEMENTS FROM A FIRST POLARIZED STABLE DIRECTION TO A SECOND OPPOSITELY POLARIZED STABLE DIRECTION, OR FROM SAID SECOND STABLE DIRECTION TO SAID FIRST STABLE DIRECTION, RESPECTIVELY; (E) A NUMBER J OF CONTROL MEANS WITH EACH JTH CONTROL MEANS BEING CONNECTED TO THE RESPECTIVE JTH WORD WINDING AND SELECTIVELY ACTUABLE TO A FIRST STATE TO APPLY CURRENT TO GENERATE SAID FIRST MAGNETIC FIELD; (F) GENERATOR MEANS FOR APPLYING TO ALL OF SAID N DRIVE WINDINGS IN A PREDETERMINED NONOVERLAPPING SEQUENCE A LIKE PAIR OF TIME-SEPARATED CURRENT PULSES EACH PULSE OF DIFFERENT POLARITY AND EACH PULSE PRODUCING A SAID SECOND MAGNETIC FIELD OF DIFFERENT POLARITY WHICH HAS A MAGNITUDE SUFFICIENT ONLY IN THE PRESENCE OF A SAID FIRST MAGNETIC FIELD TO REVERSE OPPOSITELY POLARIZED FLUX IN ANY NTH ELEMENT COUPLED WITH THE RESPECTIVE NTH DRIVE WINDING; AND (G) A NUMBER J OF RESETTING MEANS WITH EACH JTH RESETTING MEANS BEING CONNECTED TO THE RESPECTIVE JTH SENSE WINDING FOR DEACTUATING THE RESPECTIVE JTH CONTROL MEANS TO A SECOND STATE IN RESPONSE TO ONLY THAT POLARITY EMF WHICH CAN BE INDUCED BY A REVERSAL OF ELEMENT FLUX CAUSED BY THE FIRST OF SAID PAIR OF DIFFERENT POLARITY CURRENT PULSES TO BE APPLIED BY SAID GENERATOR MEANS TO ANY NTH DRIVE WINDING.
 39. A CHARACTER CORRELATION SYSTEM COMPRISING: (A) A SEARCH MEMORY FIELD ADAPTED TO HOLD A STRING OF CHARACTERS AT DIFFERENT SPATIALLY RELATED LOCATIONS THEREOF; (B) FIRST MEANS FOR SIMULTANEOUSLY INTERROGATING ALL OF SAID SEARCH MEMORY FIELD LOCATIONS FOR THE PRESENCE THEREIN OF ANY PARTICULAR CHARACTER; (C) A SECOND MEANS OPERATIVELY CONNECTED WITH SAID SEARCH MEMORY LOCATIONS AND RESPONSIVE TO THE INTERROGATION THEREOF WHICH CAN GENERATE SPATIALLY RELATED FIRST SIGNAL INDICATIONS EACH SIGNIFYING THAT SAID PARTICULAR CHARACTER INTERROGATED FOR IS PRESENT IN A PARTICULAR DIFFERENT SPATIAL SEARCH MEMORY LOCATION; (D) THIRD MEANS FOR GENERATING SPATIALLY RELATED REFERENCE SIGNALS WHOSE TOTAL NUMBER AND SPATIAL RELATIONSHIP CAN BE SELECTIVELY VARIED; AND (E) FOURTH MEANS FOR COMPARING SAID REFERENCE SIGNALS SIMULTANEOUSLY WITH EACH OF SEVERAL DIFFERENT SPATIALLY SHIFTED POSITIONS OF SAID FIRST SIGNAL INDICATIONS, WHEREIN SPATIALLY RELATED SECOND SIGNAL INDICATIONS CAN BE GENERATED EACH IDENTIFYING A PARTICULAR DIFFERENT SPATIALLY SHIFTED POSITION OF SAID FIRST SIGNAL INDICATIONS WHICH PERMIT COINCIDENCE THEREWITH OF SAID REFERENCE SIGNALS. 